System and method of surface consistent processing

ABSTRACT

Methods, systems, and computer-readable medium to perform operations including obtaining, for a plurality of traces, seismic signal amplitude data associated with a plurality of sources and receivers; determining that the signal amplitude data includes at least a receiver key and a source key; in response to the determining, generating a receiver group key and a source group key; assigning a respective weight to each of the receiver key, the source key, the receiver group key, and the source group key; and generating surface-consistent amplitude data using the constrained linear system of equations and each scaling factor of the weighted-receiver key, the weighted-source key, the weighted-receiver group key, and the weighted-source group key.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This application claims the benefit of priority to U.S. ProvisionalApplication Ser. No. 62/693,206, filed on Jul. 2, 2018, the contents ofwhich are hereby incorporated by reference.

TECHNICAL FIELD

This disclosure relates to surface consistent processing of seismicdata.

BACKGROUND

Surface-consistent processing of seismic data involves simultaneousprocessing of large datasets, which creates challenges from acomputational and data management perspective. Additionally, a linearsystem of a convolution modeling scheme can suffer from non-uniqueness.There is currently no consensus on a solution for mitigating thenon-uniqueness and constraints of the system. One issue that isencountered when developing solutions is long-wavelength errors. Theseerrors are observed when sources and receivers experience differentcoupling from one location to another in a survey area. These errors insurface consistent processing have not been addressed successfully.

SUMMARY

The present disclosure discusses surface-consistent processing that isused in seismic processing algorithms. For example, surface-consistentamplitude (SCA) analysis determines scaling factors that affect theroot-mean-square (RMS) signal amplitude of seismic traces. Scalingfactors can be identified using inversion by assuming that the RMSamplitude of the trace corresponding to the source i and the receiver j(that is, RMS_(i,j)) is a product of the source scaling factor s_(i),the receiver scaling factor r_(j), and the Greens function g_(i,j)between the ith source and the jth receiver. However, when sourcesexperience different coupling from one location to another, longwavelength errors are observed. To that end, incorporation of surfaceconditions into a linear system of equations can facilitatesurface-consistent amplitude balancing with additional keys that can beapplied to the seismic data.

Innovative aspects of the subject matter described in this disclosuremay be embodied in methods that include the actions of obtaining, for aplurality of traces, seismic signal amplitude data associated with aplurality of sources and receivers; determining that the signalamplitude data includes at least a receiver key and a source key; inresponse to the determining, generating a receiver group key and asource group key; assigning a respective weight to each of the receiverkey, the source key, the receiver group key, and the source group key;and generating surface-consistent amplitude data usingsurface-consistent amplitude processing and each scale factor of theweighted-receiver key, the weighted-source key, the weighted-receivergroup key, and the weighted-source group key.

Other embodiments of these aspects include corresponding systems,apparatus, and computer programs, configured to perform the actions ofthe methods, encoded on computer storage devices.

These and other embodiments may each optionally include one or more ofthe following features. For instance, determining that the signalamplitude data includes a common-depth point key and an offset key.Assigning a respective weight to each of the common-depth point key andthe offset key; and generating the surface consistent amplitude datausing each scaling factor of the weighted-receiver key, theweighted-source key, the weighted-receiver group key, theweighted-source group key, the weighted-common-depth point key, and theweighted-offset key. Assigning each of the weights to each of thereceiver key, the source key, the receiver group key, the source groupkey, the common-depth point key, and the offset key to balance anamplitude of the seismic data. The weight assigned to the source key isgreater than the weight assigned to the source group key. The weightassigned to the receiver key is greater than the weight assigned to thereceiver group key. Both of the weight assigned to the source group keyand the weight assigned to the receiver group key is greater than theweight assigned to the offset key. Both of the weight assigned to thesource group key and the weight assigned to the receiver group key isgreater than the weight assigned to the common-depth point key. Groupingthe sources into disjointed source groups; and generating the sourcegroup key based on source solutions without a group key or extrainformation such as source elevation, surface condition index, surveydates and so other available information. Grouping the receivers intodisjointed receiver groups and generating the receiver group key as thesource group key is generated.

Particular implementations of the subject matter described in thisspecification can be implemented so as to realize one or more of thefollowing advantages. For example, implementation of the subject matterprovides improved surface-consistent processing of seismic data, andreduction of long wavelength errors. More balanced seismic data leads tomore accurate subsurface velocity models and seismic images with higherresolution. Predicting well locations and planning of drilling rely oninterpretation of these seismic images.

The details of one or more implementations of the subject matterdescribed in this disclosure are set forth in the accompanying drawingsand the description. Other features, aspects, and advantages of thesubject matter will become apparent from the description, the drawings,and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration of a system for surface consistentprocessing, according to some implementations.

FIGS. 2A, 3A, 4A illustrate respective four key decompositions withrespect to source functions, according to some implementations.

FIGS. 2B, 3B, 4B illustrate respective four key decompositions withrespect to receiver functions, according to some implementations.

FIG. 5A illustrates a five key decomposition with respect to sourcefunctions, according to some implementations.

FIG. 5B illustrates a five key decomposition with respect to receiverfunctions, according to some implementations.

FIG. 6A illustrates a six key decomposition with respect to sourcefunctions, according to some implementations.

FIG. 6B illustrates a six key decomposition with respect to receiverfunctions, according to some implementations.

FIGS. 7A, 7B, 7C illustrate an input receiver gather and amplitudebalancing, according to some implementations.

FIG. 8A, 8B illustrate a source group key on amplitude balancing,according to some implementations.

FIG. 9 illustrates a flowchart for surface consistent processing,according to some implementations.

FIG. 10 illustrates an example computing environment for implementingthe techniques described herein, according to some implementations.

DETAILED DESCRIPTION

The present disclosure describes a computing system 100 for surfaceconsistent processing, shown in FIG. 1. The computing system 100includes a computing device 102 that can be in communication with one ormore other computing systems (not shown) over one or more networks (notshown). The system 100 further includes a data store 106, with thecomputing device 102 in communication with the data store 106.

In some implementations, the computing device 102, obtains, for aplurality of traces, seismic data 120 that is associated with aplurality of sources and receivers. In some examples, the seismic data120 can include seismic signal amplitude data. The computing device 102can analyze the seismic data 120 to determine that the seismic data 120includes at least a receiver scaling factor key 150 a, a source scalingfactor key 150 b, a common-depth point key 150 c, and an offset factorkey 150 d. Specifically, in surface-consistent processing, theroot-mean-square (RMS) amplitude of a trace corresponding to a source iand a receiver j can be expressed by Equation [1]:RMS_(i,j) =s _(i) r _(j) g _(i,j);  [1]

where s_(i), r_(j), and g_(i,j) are scaling factors associated with theith source, jth receiver, and the Greens function between source i andreceiver j, respectively.

The factor g_(i,j) can be approximated by a decomposition into acommon-depth point (CDP) and offset factors. As a result, the computingdevice 102 is able to increase redundancy (for example, improvinginversion robustness) while reducing computational cost. The accuracy ofthe inverted scaling factors can depend on the validity of thisapproximation. Factors that are not captured by this approximation canhave their effect incorporated into the chosen factors by averaging.Moreover, the log transform can be used to linearize the inversion ofEquation [1].

In some examples, Equation [1] can be decomposed in a “four key” examplewith the factor g_(i,j) decomposed into the CDP and offset componentsc_(i,j) and o_(i,j), respectively. This yields Equation [2]:ln RMS_(i,j)=ln s _(i)+ln r _(j)+ln c _(i,j)+ln o _(i,j).  [2]

In some examples, the computing device 102 can replace the four logterms on the right hand side of Equation [2] with variables S_(i),R_(j), C_(i,j), and O_(i,j). This provides a system of linear equationsequal to the number of traces. The properties of the resultantdecomposition matrix (A) include:

-   -   Every row having the same number of 1's. The number of 1's is        the number of used keys in the convolutional modeling.    -   The matrix A can be written as [A₁|A₂|A₃| . . . |A_(n)], where n        is the number of keys. The number of columns in the submatrix        A_(i) equals the number of unique key values of the ith key,        n_(i).    -   The unknown vector x=[x₁|x₂| . . . |x_(n)]^(T), where x_(i)=[x₁        ^(i),x₂ ^(i), . . . , x_(n) ^(i)]. In some examples, x_(i) is        set equal to 1 to indicate that all elements of x_(i) are 1, for        example, x_(k) ^(i)=1, from k=1 to n_(i).    -   The dimension of the null space of the matrix A is at least n−1.        For x_(i)=1, A_(i)x_(i)=1. For any pair of subscripts i and j,        (i≠j), x_(i)=1 and x_(j)=−1 makes A_(i)x_(i)+A_(j)x_(j)=0. Thus,        x=[0| . . . |x_(i)| . . . |x_(j)| . . . 0]^(T) is a basis of the        null space. Each pair in the set, [(1,2), (1,3), . . . , (1,n)],        will make an independent null vector, totaling n−1 null vectors.    -   As the number of keys increases, the dimension of the null space        gets larger.

In some implementations, the computing device 102, in response todetermining that the seismic data includes at least the receiver scalingfactor key 150 a, the source scaling factor key 150 b, the common-depthpoint key 150 c, and the offset factor key 150 d, generates a receivergroup key 150 e, and a source group key 150 f (for simplicity, the keys150 a, 150 b, 150 c, 150 d, 150 e, 150 f can be referred to as keys150). In short, the computing device 102 can group the sources and thereceivers into clusters to facilitate generating the receiver group key150 e and the source group key 150 f. In an example, the computingdevice 102 groups the sources and the receivers based on one or moremeasures, such as moisture, elevation, temperature, or a combinationthereof. Specifically, the computing device 102 can replace the sourceterm s_(i) with {tilde over (s)}g_(sk(i)) ^(s), where sk(i)∈K={1, 2, . .. , N_(g) ^(s)}. N_(g) ^(s) is the number of groups (clusters) ofsources. In some examples, the number of groups of sources is smallerthan the total number of sources. The integer sk(i) indicates the groupto which the ith source belongs. The sources are grouped into N_(g) ^(s)disjointed groups, G₁ ^(s), G₂ ^(s), . . . , G_(N) _(g) _(s) ^(s), whereG₁ ^(s)∪G₂ ^(s)∪ . . . ∪G_(N) _(g) _(s) ^(s)={1, 2, 3, 4, . . . ,N_(s)}.

Similarly, the computing device 102 can replace the source term r_(i)with {tilde over (r)}g_(rk(i)) ^(r), where rk(i)∈K={1, 2, . . . , N_(g)^(r)}. N_(g) ^(r) is the number of groups (clusters) of receivers. Insome examples, the number of groups of receivers is smaller than thetotal number of receivers. The integer rk(i) indicates the group towhich the ith receiver belongs. The receivers are grouped into N_(g)^(r) disjointed groups, G₁ ^(r), G₂ ^(r), . . . , G_(N) _(g) _(r) ^(r),where G₁ ^(r)∪G₂ ^(r)∪ . . . ∪G_(N) _(g) _(r) ^(r)={1, 2, 3, 4, . . . .N_(r)}.

With these groups, the receiver function r_(j) can be factorizedsimilarly. Such representation of the sources and receivers is analogousto modeling a function with a linear combination of basis functions. Insome examples, {tilde over (s)}_(i)=1 and {tilde over (r)}_(j)=1 suchthat the computing device 102 can implement piecewise constant basisfunctions for each group. To that end, the computing device 102 canadjust Equation [2] based on the grouping of the sources and receivers,as shown in Equation [3]:ln RMS_(i,j)=ln {tilde over (s)} _(i)+ln g _(sk(i)) ^(s)+ln {tilde over(r)} _(j)+ln g _(sk(i)) ^(r) ln c _(i,j)+ln o _(i,j).  [3]

However, adding the additional group keys does not change the number ofequations but does increase the number of unknowns by the total numberof source and receiver groups, for example, N_(g) ^(r)+N_(g) ^(s).

In some implementations, the computing device 102 adds a respectiveweight to each of the receiver scaling factor key 150 a, the sourcescaling factor key 150 b, the receiver group key 150 e, the source groupkey 150 f, the common-depth point key 150 c, and the offset factor key150 d. Specifically, the computing device 102 adds constraints to thekeys 150 to identify a solution. That is, each of the receiver scalingfactor key 150 a, the source scaling factor key 150 b, the receivergroup key 150 e, the source group key 150 f, the common-depth point key150 c, and the offset factor key 150 d is adjusted (or penalized) by thecomputing device 102 with the weights W_(src), W_(cdp), W_(rec),W_(off), W_(sgroup), and W_(rgroup), respectively (shown as weights165). Thus, the size, more specifically, the number of rows, of theaugmented system of equations increases by the number of unknowns,N_(s)+N_(cdp)+N_(r)+N_(o)+N_(sg)+N_(rg). In some examples, theindividual receiver and source scaling factor keys 150 a, 150 b are lessemphasized than the receiver and source group keys 150 e, 150 f. In someexamples, the weights follow the guideline:

-   -   W_(src)>W_(sgroup)    -   W_(rec)>W_(rgroup)    -   W_(off)<W_(sgroup), W_(rgroup)    -   W_(cdp)<W_(sgroup), W_(rgroup)

In some examples, the computing device 102 adds the respective weights165 to each of the receiver scaling factor key 150 a, the source scalingfactor key 150 b, the receiver group key 150 e, the source group key 150f, the common-depth point key 150 c, and the offset factor key 150 d tobalance an amplitude of the seismic data 120. That is, when the seismicdata 120 is balanced, discontinuity in the amplitude of the seismic data120 is reduced or minimized. This facilitates reducing, or minimizing,the long wavelength errors that can occur when the sources and receiversexperience different coupling from one location to another or experiencediscontinuities. The computing device 102 balances the amplitude of theseismic data 120 by adding weights 165 to constrain the linear systemsin the surface-consistent processing of the seismic data 120, therebymitigating the non-uniqueness and the long wavelength errors.

In some implementations, the computing device 102 generatessurface-consistent amplitude data 170 using each scaling factor of theweighted-receiver scaling factor key 150 a, the weighted-source scalingfactor key 150 b, the weighted-receiver group key 150 e, theweighted-source group key 150 f, the weighted-common-depth point key 150c, and the weighted-offset factor key 150 d. Specifically, the computingdevice 102 generates the surface-consistent amplitude data 170 using asolution of constrained linear system of equations and each of theweighted-keys 150 to reduce, or remove, the source, the receiver, orboth, effect on the seismic data 120. In an implementation, matrices areinverted with Conjugate Gradient Normal Residual (CGNR), which solvesA^(T)Ax=A^(T)b. For large scale problems, the computing device 102 canimplement a surface-consistent processing framework that has beendeveloped for surface-consistent amplitude balancing, deconvolution, andresidual statics correction. Linear systems are augmented withconstraints, with the computing device 102 solving the CGNR algorithmiteratively.

FIGS. 2-6 illustrate source and receiver solutions for differentconstraints and weights 165 on the keys 150, according to someimplementations. Specifically, FIGS. 2-4 illustrate scenarios when fourkeys are used in the decomposition including the source scaling factorkey 150 b, the receiver scaling factor key 150 a, the common-depth pointkey 150 c, and the offset factor key 150 d. FIGS. 2A, 2B illustrate afirst example of a four key decomposition. Specifically, FIG. 2Aillustrates a graph 200 of a comparison of the source functions betweennumerical solutions 202 (unbolded line) and true solutions 204 (boldedline) without any constraint; and FIG. 2B illustrates a graph 250 of acomparison of the receiver functions between numerical solutions 252(unbolded line) and true solutions 254 (bolded line) without anyconstraint. That is, the weights 165 for each of the receiver scalingfactor key 150 a, the source scaling factor key 150 b, the common-depthpoint key 150 c, and the offset factor key 150 d is zero.

FIGS. 3A, 3B illustrate a second example of a four key decomposition.Specifically, FIG. 3A illustrates a graph 300 of a comparison of thesource functions between numerical solutions 302 (unbolded line) andtrue solutions 304 (bolded line); and FIG. 3B illustrates a graph 350 ofa comparison of the receiver functions between numerical solutions 352(unbolded line) and true solutions 354 (bolded line) without anyconstraint. That is, the weight 165 for the receiver scaling factor key150 a is 10; the weight 165 for the source scaling factor key 150 b is10, the weight 165 for the common-depth point key 150 c is 1e-3, and theweight 165 for the offset factor key 150 d is 1e-3.

FIGS. 4A, 4B illustrate a third example of a four key decomposition.Specifically, FIG. 4A illustrates a graph 400 of a comparison of thesource functions between numerical solutions 402 (unbolded line) andtrue solutions 404 (bolded line); and FIG. 4B illustrates a graph 450 ofa comparison of the receiver functions between numerical solutions 452(unbolded line) and true solutions 454 (bolded line) without anyconstraint. That is, the weight 165 for the receiver scaling factor key150 a is 50; the weight 165 for the source scaling factor key 150 b is50, the weight 165 for the common-depth point key 150 c is 1e-3, and theweight 165 for the offset factor key 150 d is 1e-3.

FIGS. 5A, 5B illustrate an example of a five key decomposition thatadditionally includes the receiver group key 150 e (for example,generated by splitting the receivers into six groups). Specifically,FIG. 5A illustrates a graph 500 of a comparison of the source functionsbetween numerical solutions 502 (unbolded line) and true solutions 504(bolded line); and FIG. 5B illustrates a graph 550 of a comparison ofthe receiver functions between numerical solutions 552 (unbolded line)and true solutions 554 (bolded line) without any constraint. That is,the weight 165 for the receiver scaling factor key 150 a is 50; theweight 165 for the source scaling factor key 150 b is 50, the weight 165for the common-depth point key 150 c is 1e-3, the weight 165 for theoffset factor key 150 d is 1e-3, and the weight 165 for the receivergroup key 150 e is 1. As shown by this example, as the receiver groupkey 150 e is weighted (or penalized), the numerical solution of thereceiver function is closer to the true solution. Note that thenumerical solution of the source function differs from the true solutionas the source group key 150 f is not constrained.

FIGS. 6A, 6B illustrate an example of a six key decomposition thatadditionally includes the source group key 150 f and the receiver groupkey 150 e. Specifically, FIG. 6A illustrates a graph 600 of a comparisonof the source functions between numerical solutions 602 (unbolded line)and true solutions 604 (bolded line); and FIG. 6B illustrates a graph650 of a comparison of the receiver functions between numericalsolutions 652 (unbolded line) and true solutions 654 (bolded line)without any constraint. That is, the weight 165 for the receiver scalingfactor key 150 a is 50; the weight 165 for the source scaling factor key150 b is 50, the weight 165 for the common-depth point key 150 c is1e-3, the weight 165 for the offset factor key 150 d is 1e-3, the weight165 for the receiver group key 150 e is 1, and the weight 165 for thesource group key 150 f is 1. As illustrated, both of the source andreceiver functions are constrained with group keys 150 e, 150 f. Thus,the numerical solutions of the receiver and source functions followcloser to the true solutions.

FIGS. 7A, 7B, 7C illustrate examples 700, 702, 704, respectively, ofamplitude balancing, according to some implementations. Specifically,the amplitude balancing is performed on a dataset that is obtained overapproximately one month and that includes approximately 100,000 surfaceshots, and 1,000 buried receivers. The receivers are arranged in acircular shape, and the sources are arranged in a circle centered aboutthe receiver circle. A constant time window between 0.7 seconds and 1.7seconds is used across the dataset. The computing device 102 cancalculate the RMS amplitude within this time window for each trace toprovide the input data for surface-consistent amplitude (SCA).

FIG. 7A illustrates a small portion of the receiver gather in order ofshot number. Each trace in the gather is associated with a respectiveacquisition date. Thus, trace amplitudes can change abruptly due tosource elevation or surface conditions changes, as shown by the portionof the receiver gather within ellipse 750. In an implementation, thecomputing device 102 can balance the seismic data to reduce suchdiscontinuity in trace amplitude. In order to demonstrate a group keyfor the sources, traces that were collected during the middle 20 days ofthe 1 month are amplified by a factor of 2. FIG. 7B illustrates amodified receiver gather with the amplified traces. As shown in FIG. 7B,the traces that were collected during the middle 20 days of the 1 month(that is, the traces that are outside outline 752) are amplified. Theamplitude balancing is then performed using five keys—the source scalingfactor key 150 b, the source group key 150 f, the receiver scalingfactor key 150 a, the common-depth point key 150 c, and the offsetfactor key 150 d. The source groups are formed such that each groupcontains sources associated with the same acquisition date. FIG. 7Cillustrates the receiver gather after amplitude balancing with the fivekeys. As shown by comparing the portion of the gather within ellipse 754and the portion of the input gather within ellipse 750, thediscontinuity of the amplitude balanced gather is much weaker than thatof the input gather. Note that in FIG. 7C, the effect of amplificationby two is removed and the overall amplitude is close to that of theoriginal input gather of FIG. 7A.

FIG. 8A illustrates an example 800 showing the results when a group keyis used (for example, one of or both of keys 150 e, 150 f) for amplitudebalancing compared to the example 802 of FIG. 8B that is generatedwithout the group key.

FIG. 9 illustrates an example process 900 for surface consistentprocessing. The process 900 can be performed, for example, by thecomputing system 100, or another data processing apparatus. The process900 can also be implemented as instructions stored on computer storagemedium, and execution of the instructions by one or more data processingapparatus cause the one or more data processing apparatus to performsome or all of the operations of the process 900.

The computing device 102, obtains, for a plurality of traces, seismicdata 120 that is associated with a plurality of sources and receivers(902). The computing device 102 can analyze the seismic data 120 todetermine that the seismic data includes at least a receiver scalingfactor key 150 a, a source scaling factor key 150 b, a common-depthpoint key 150 c, and an offset factor key 150 d (904). The computingdevice 102, in response to determining that the seismic data includes atleast a receiver scaling factor key 150 a, a source scaling factor key150 b, a common-depth point key 150 c, and an offset factor key 150 d,generates a receiver group key 150 e, and a source group key 150 f(906). The computing device 102 adds a respective weight 165 to each ofthe receiver scaling factor key 150 a, the source scaling factor key 150b, the receiver group key 150 e, the source group key 150 f, thecommon-depth point key 150 c, and the offset key 160 d (908). Thecomputing device 102 generates surface-consistent amplitude data 170using a solution of the constrained linear system of equations and eachscaling factors of the weighted-receiver scaling factor key 150 a, theweighted-source scaling factor key 150 b, the weighted-receiver groupkey 150 e, the weighted-source group key 150 f, theweighted-common-depth point key 150 c, and the weighted-offset factorkey 150 d (910).

FIG. 10 shows an example of a generic computing device 1000 and ageneric mobile computing device 1050, which are used with the techniquesdescribed here. Computing device 1000 is intended to represent variousforms of digital computers, such as laptops, desktops, workstations,personal digital assistants, servers, blade servers, mainframes, andother appropriate computers. Mobile computing device 1050 is intended torepresent various forms of mobile devices, such as personal digitalassistants, cellular telephones, smartphones, and other similarcomputing devices. The components shown here, their connections andrelationships, and their functions, are meant to be exemplary only, andare not meant to limit implementations of the inventions described andclaimed in this document.

Computing device 1000 includes a processor 1002, memory 1004, a storagedevice 1006, a high-speed interface 1008 connecting to memory 1004 andhigh-speed expansion ports 1010, and a low-speed interface 1012connecting to low-speed bus 1014 and storage device 1006. Each of thecomponents 1002, 1004, 1006, 1008, 1010, and 1012, are interconnectedusing various busses, and are mounted on a common motherboard or inother manners as appropriate. The processor 1002 processes instructionsfor execution within the computing device 1000, including instructionsstored in the memory 1004 or on the storage device 1006 to displaygraphical information for a GUI on an external input/output device, suchas display 1016 coupled to high-speed interface 1008. In otherimplementations, multiple processors, multiple buses, or both are used,as appropriate, along with multiple memories and types of memory. Also,multiple computing devices 1000 are connected, with each deviceproviding portions of the necessary operations (for example, as a serverbank, a group of blade servers, or a multi-processor system).

The memory 1004 stores information within the computing device 1000. Inone implementation, the memory 1004 is a volatile memory unit or units.In another implementation, the memory 1004 is a non-volatile memory unitor units. The memory 1004 may also be another form of computer-readablemedium, such as a magnetic or optical disk.

The storage device 1006 is capable of providing mass storage for thecomputing device 1000. In one implementation, the storage device 1006may be or contain a computer-readable medium, such as a floppy diskdevice, a hard disk device, an optical disk device, or a tape device, aflash memory or other similar solid state memory device, or an array ofdevices, including devices in a storage area network or otherconfigurations. A computer program product may be tangibly embodied inan information carrier. The computer program product may also containinstructions that, when executed, perform one or more methods. Theinformation carrier is a computer- or machine-readable medium, such asthe memory 1004, the storage device 1006, or a memory on processor 1002.

The high-speed interface 1008 manages bandwidth-intensive operations forthe computing device 1000. The low-speed interface 1012 manages lowerbandwidth-intensive operations. Such allocation of functions isexemplary only. In one implementation, the high-speed interface 1008 iscoupled to memory 1004, display 1016 (for example, through a graphicsprocessor or accelerator), and to high-speed expansion ports 1010, whichaccepts various expansion cards (not shown). In the implementation,low-speed interface 1012 is coupled to storage device 1006 and low-speedbus 1014. The low-speed expansion port, which may include variouscommunication ports (for example, USB (Universal Serial Bus), Bluetooth,Ethernet, wireless Ethernet) may be coupled to one or more input/outputdevices, such as a keyboard, a pointing device, a scanner, or anetworking device such as a switch or router, for example, through anetwork adapter.

The computing device 1000 may be implemented in a number of differentforms, as shown in the figure. For example, it may be implemented as astandard server 1020, or multiple times in a group of such servers. Itmay also be implemented as part of a rack server system 1024. Inaddition, it may be implemented in a personal computer such as a laptopcomputer 1022. Alternatively, components from computing device 1000 maybe combined with other components in a mobile device (not shown), suchas mobile computing device 1050. Each of such devices may contain one ormore of computing device 1000, 1050, and an entire system may be made upof multiple computing devices 1000, 1050 communicating with each other.

Mobile computing device 1050 includes a processor 1052, memory 1064, aninput/output device such as a display 1054, a communication interface1076, and a transceiver 1068, among other components. The mobilecomputing device 1050 may also be provided with a storage device, suchas a microdrive or other device, for additional storage. Each of thecomponents 1050, 1052, 1064, 1054, 1060, and 1068, are interconnectedusing various buses, and several of the components may be mounted on acommon motherboard or in other manners as appropriate.

The processor 1052 may execute instructions within the mobile computingdevice 1050, including instructions stored in the memory 1064. Theprocessor may be implemented as a chipset of chips that include separateand multiple analog and digital processors. The processor may provide,for example, for coordination of the other components of the mobilecomputing device 1050, such as control of user interfaces, applicationsrun by mobile computing device 1050, and wireless communication bymobile computing device 1050.

Processor 1052 may communicate with a user through control interface1058 and display interface 1056 coupled to a display 1054. The display1054 may be, for example, a TFT LCD (Thin-Film-Transistor Liquid CrystalDisplay) or an OLED (Organic Light Emitting Diode) display, or otherappropriate display technology. The display interface 1056 may compriseappropriate circuitry for driving the display 1054 to present graphicaland other information to a user. The control interface 1058 may receivecommands from a user and convert them for submission to the processor1052.

In addition, an external interface 1062 may be provide in communicationwith processor 1052, so as to enable near area communication of mobilecomputing device 1050 with other devices. External interface 1062 mayprovide, for example, for wired communication in some implementations,or for wireless communication in other implementations, and multipleinterfaces may also be used.

The memory 1064 stores information within the mobile computing device1050. The memory 1064 may be implemented as one or more of acomputer-readable medium or media, a volatile memory unit or units, or anon-volatile memory unit or units. Expansion memory 1074 may also beprovided and connected to mobile computing device 1050 through anexpansion interface 1072, which may include, for example, a SIMM (SingleIn Line Memory Module) card interface. Such expansion memory 1074 mayprovide extra storage space for mobile computing device 1050, or mayalso store applications or other information for mobile computing device1050. Specifically, expansion memory 1074 may include instructions tocarry out or supplement the processes described herein, and may includesecure information also. Thus, for example, expansion memory 1074 may beprovide as a security module for mobile computing device 1050, and maybe programmed with instructions that permit secure use of mobilecomputing device 1050. In addition, secure applications may be providedvia the SIMM cards, along with additional information, such as placingidentifying information on the SIMM card in a non-hackable manner.

The memory may include, for example, flash memory, NVRAM memory, orboth, as discussed below. In one implementation, a computer programproduct is tangibly embodied in an information carrier. The computerprogram product contains instructions that, when executed, perform oneor more methods, such as those described herein. The information carrieris a computer- or machine-readable medium, such as the memory 1064,expansion memory 1074, memory on processor 1052, or a propagated signalthat may be received, for example, over transceiver 1068 or externalinterface 1062.

Mobile computing device 1050 may communicate wirelessly throughcommunication interface 1076, which may include digital signalprocessing circuitry where necessary. Communication interface 1076 mayprovide for communications under various modes or protocols, such as GSMvoice calls, SMS, EMS, or MMS messaging, CDMA, TDMA, PDC, WCDMA,CDMA2000, or GPRS, among others. Such communication may occur, forexample, through transceiver 1068. In addition, short-rangecommunication may occur, such as using a Bluetooth, WiFi, or other suchtransceiver (not shown). In addition, GPS (Global Positioning System)receiver module 1070 may provide additional navigation- andlocation-related wireless data to mobile computing device 1050, whichmay be used as appropriate by applications running on mobile computingdevice 1050.

Mobile computing device 1050 may also communicate audibly using audiocodec 1060, which may receive spoken information from a user and convertit to usable digital information. Audio codec 1060 may likewise generateaudible sound for a user, such as through a speaker, for example, in ahandset of mobile computing device 1050. Such sound may include soundfrom voice telephone calls, may include recorded sound (for example,voice messages, music files, etc.) and may also include sound generatedby applications operating on mobile computing device 1050.

The mobile computing device 1050 may be implemented in a number ofdifferent forms, as shown in the figure. For example, it may beimplemented as a cellular telephone 1080. It may also be implemented aspart of a smartphone 1082, personal digital assistant, or other similarmobile device.

Various implementations of the systems and techniques described here maybe realized in digital electronic circuitry, integrated circuitry,specially designed ASICs (application specific integrated circuits),computer hardware, firmware, software, or combinations thereof. Thesevarious implementations may include implementation in one or morecomputer programs that are executable and interpretable on aprogrammable system including at least one programmable processor, whichmay be special or general purpose, coupled to receive data andinstructions from, and to transmit data and instructions to, a storagesystem, at least one input device, and at least one output device.

These computer programs (also known as programs, software, softwareapplications or code) include machine instructions for a programmableprocessor, and may be implemented in a high-level procedural,object-oriented programming language, or in assembly/machine language.As used herein, the terms “machine-readable medium” “computer-readablemedium” refers to any computer program product, apparatus, or device(for example, magnetic discs, optical disks, memory, Programmable LogicDevices (PLDs)) used to provide machine instructions or data to aprogrammable processor, including a machine-readable medium thatreceives machine instructions as a machine-readable signal. The term“machine-readable signal” refers to any signal used to provide machineinstructions and data to a programmable processor.

To provide for interaction with a user, the systems and techniquesdescribed here may be implemented on a computer having a display device(for example, a CRT (cathode ray tube) or LCD (liquid crystal display)monitor) for displaying information to the user and a keyboard and apointing device (for example, a mouse or a trackball) by which the usermay provide input to the computer. Other kinds of devices may be used toprovide for interaction with a user as well; for example, feedbackprovided to the user may be any form of sensory feedback (for example,visual feedback, auditory feedback, or tactile feedback); and input fromthe user may be received in any form, including acoustic, speech, ortactile input.

The systems and techniques described here may be implemented in acomputing system that includes a back end component (for example, as adata server), or that includes a middleware component (for example, anapplication server), or that includes a front end component (forexample, a client computer having a graphical user interface or a Webbrowser through which a user may interact with an implementation of thesystems and techniques described here), or any combination of such backend, middleware, or front end components. The components of the systemmay be interconnected by any form or medium of digital datacommunication (for example, a communication network). Examples ofcommunication networks include a local area network (“LAN”), a wide areanetwork (“WAN”), and the Internet.

The computing system may include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

While this disclosure includes some specifics, these should not beconstrued as limitations on the scope of the disclosure or of what maybe claimed, but rather as descriptions of features of exampleimplementations of the disclosure. Certain features described in thisdisclosure in the context of separate implementations can also beprovided in combination in a single implementation. Conversely, variousfeatures that are described in the context of a single implementationcan also be provided in multiple implementations separately or in anysuitable subcombination. Moreover, although features may be describedherein as acting in certain combinations and even initially claimed assuch, one or more features from a claimed combination can in some casesbe excised from the combination, and the claimed combination may bedirected to a subcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the implementations described herein should not beunderstood as requiring such separation in all implementations, and itshould be understood that the described program components and systemscan generally be integrated together in a single software product orpackaged into multiple software products.

Thus, particular implementations of the present disclosure have beendescribed. Other implementations are within the scope of the followingclaims. For example, the actions recited in the claims can be performedin a different order and still achieve desirable results. A number ofimplementations have been described. Nevertheless, it will be understoodthat various modifications may be made without departing from the spiritand scope of the disclosure. For example, various forms of the flowsshown above may be used, with steps re-ordered, added, or removed.Accordingly, other implementations are within the scope of the followingclaims.

I claim:
 1. A computer-implemented method, comprising: obtaining, for aplurality of traces, seismic signal amplitude data associated with aplurality of sources and receivers; determining that the signalamplitude data includes at least a receiver key and a source key;grouping the sources into disjointed source groups; grouping thereceivers into disjointed receiver groups; in response to thedetermining, generating a receiver group key based on the disjointedreceiver groups and a source group key based on the disjointed sourcegroups; assigning a respective weight to each of the receiver key, thesource key, the receiver group key, and the source group key; andgenerating surface-consistent amplitude data using surface-consistentamplitude processing and each of the weighted-receiver key, theweighted-source key, the weighted-receiver group key, and theweighted-source group key, wherein the surface-consistent amplitude datareduces long wavelength errors in the seismic signal amplitude data andleads to seismic images with higher resolution.
 2. The method of claim1, further comprising: determining that the signal amplitude dataincludes a common-depth point key and an offset key.
 3. The method ofclaim 2, further comprising: assigning a respective weight to each ofthe common-depth point key and the offset key; and generating thesurface consistent amplitude data using the surface-consistent amplitudeprocessing and each of the weighted-receiver key, the weighted-sourcekey, the weighted-receiver group key, the weighted-source group key, theweighted-common-depth point key, and the weighted-offset key.
 4. Themethod of claim 3, wherein assigning the respective weights includesassigning each of the weights to each of the receiver key, the sourcekey, the receiver group key, the source group key, the common-depthpoint key, and the offset key to balance an amplitude of the seismicdata.
 5. The method of claim 4, wherein the weight assigned to thesource key is greater than the weight assigned to the source group key.6. The method of claim 4, wherein the weight assigned to the receiverkey is greater than the weight assigned to the receiver group key. 7.The method of claim 4, wherein both of the weight assigned to the sourcegroup key and the weight assigned to the receiver group key is greaterthan the weight assigned to the offset key.
 8. The method of claim 4,wherein both of the weight assigned to the source group key and theweight assigned to the receiver group key is greater than the weightassigned to the common-depth point key.
 9. A system, comprising: one ormore processors; and a non-transitory computer-readable storage mediumcoupled to the one or more processors and storing programminginstructions for execution by the one or more processors, theprogramming instructions instructing the one or more processors toperform operations comprising: obtaining, for a plurality of traces,seismic signal amplitude data associated with a plurality of sources andreceivers; determining that the signal amplitude data includes at leasta receiver key and a source key; grouping the sources into disjointedsource groups; grouping the receivers into disjointed receiver groups;in response to the determining, generating a receiver group key based onthe disjointed receiver groups and a source group key based on thedisjointed source groups; assigning a respective weight to each of thereceiver key, the source key, the receiver group key, and the sourcegroup key; and generating surface-consistent amplitude data usingsurface-consistent amplitude processing and each of theweighted-receiver key, the weighted-source key, the weighted-receivergroup key, and the weighted-source group key, wherein thesurface-consistent amplitude data reduces long wavelength errors in theseismic signal amplitude data and leads to seismic images with higherresolution.
 10. The system of claim 9, the operations further comprisingdetermining that the signal amplitude data includes a common-depth pointkey and an offset key.
 11. The system of claim 10, the operationsfurther comprising: assigning a respective weight to each of thecommon-depth point key and the offset key; and generating thesurface-consistent amplitude data using the surface-consistent amplitudeprocessing and each of the weighted-receiver key, the weighted-sourcekey, the weighted-receiver group key, the weighted-source group key, theweighted-common-depth point key, and the weighted-offset key.
 12. Thesystem of claim 11, wherein assigning the respective weights includesassigning each of the weights to each of the receiver key, the sourcekey, the receiver group key, the source group key, the common-depthpoint key, and the offset key to balance an amplitude of the seismicdata.
 13. A non-transitory computer readable medium storing instructionsto cause one or more processors to perform operations comprising:obtaining, for a plurality of traces, seismic signal amplitude dataassociated with a plurality of sources and receivers; determining thatthe signal amplitude data includes at least a receiver key and a sourcekey; grouping the sources into disjointed source groups; grouping thereceivers into disjointed receiver groups; in response to thedetermining, generating a receiver group key based on the disjointedreceiver groups and a source group key based on the disjointed sourcegroups; assigning a respective weight to each of the receiver key, thesource key, the receiver group key, and the source group key; andgenerating surface-consistent amplitude data using surface-consistentamplitude processing and each of the weighted-receiver key, theweighted-source key, the weighted-receiver group key, and theweighted-source group key, wherein the surface-consistent amplitude datareduces long wavelength errors in the seismic signal amplitude data andleads to seismic images with higher resolution.
 14. The non-transitorycomputer readable medium of claim 13, the operations further comprisingdetermining that the signal amplitude data includes a common-depth pointkey and an offset key.
 15. The non-transitory computer readable mediumof claim 14, the operations further comprising: assigning a respectiveweight to each of the common-depth point key and the offset key; andgenerating the surface-consistent amplitude data using thesurface-consistent amplitude processing and each of theweighted-receiver key, the weighted-source key, the weighted-receivergroup key, the weighted-source group key, the weighted-common-depthpoint key, and the weighted-offset key.
 16. The non-transitory computerreadable medium of claim 15, wherein assigning the respective weightsincludes assigning each of the weights to each of the receiver key, thesource key, the receiver group key, the source group key, thecommon-depth point key, and the offset key to balance an amplitude ofthe seismic data.